package cz.semjobKB.search.api;

import cz.semjobKB.conllx.node.EConstituent;
import cz.semjobKB.conllx.node.EWordType;

/**
 * Interface declares methods for a Node of a Rule
 */
public interface INodeRule {
	
	/**
	 * Gets the constituents associated with this node
	 * @return Constituent
	 */
	EConstituent getType();
	
	/**
	 * If it dependent on another constituent 
	 * 
	 * @return true if it is dependent, otherwise false
	 */
	boolean isDependent();
	
	/**
	 * Parent constituent on which is the node dependent
	 * @return parent constituent type
	 */
	EConstituent getParentType();
	
	/**
	 * Gets the word type (Noun, Verb etc...)
	 * @return
	 */
	EWordType getWordType();
}
